import request from '../utils/request';

/**
 * 学生登录
 * @param {Object} data - 登录数据
 * @returns {Promise} - 登录请求的Promise对象
 */
export function studentLogin(data) {
  return request({
    url: '/api/user/student/login',
    method: 'post',
    data
  });
}

/**
 * 教师登录
 * @param {Object} data - 登录数据
 * @returns {Promise} - 登录请求的Promise对象
 */
export function teacherLogin(data) {
  return request({
    url: '/api/user/teacher/login',
    method: 'post',
    data
  });
}

/**
 * 获取用户详细信息
 * @param {Number} userId - 用户ID
 * @returns {Promise} - 用户信息请求的Promise对象
 */
export function getUserInfo(userId) {
  return request({
    url: `/api/user/${userId}`,
    method: 'get'
  });
}

/**
 * 更新用户信息
 * @param {Object} data - 用户信息数据
 * @returns {Promise} - 更新请求的Promise对象
 */
export function updateUserInfo(data) {
  console.log('调用updateUserInfo API，传递的数据:', data);
  return request({
    url: '/api/user/update',
    method: 'put',
    data,
    headers: {
      'Content-Type': 'application/json'
    }
  });
}

/**
 * 修改用户密码
 * @param {Object} data - 包含userId、oldPassword和newPassword的对象
 * @returns {Promise} - 修改密码请求的Promise对象
 */
export function changePassword(data) {
  return request({
    url: '/api/user/password',
    method: 'put',
    data
  });
}

/**
 * 获取联系人列表
 * @param {Number} userId - 用户ID
 * @returns {Promise} - 联系人请求的Promise对象
 */
export function getContacts(userId) {
  return request({
    url: '/api/user/contacts',
    method: 'get',
    params: { userId }
  });
}
